From 4847d8bc954c0cf1fbcfa5d45465c8ee014f49de Mon Sep 17 00:00:00 2001 From: =?utf8?q?Florian=20M=C3=BCllner?= Date: Fri, 29 Nov 2024 18:00:29 +0100 Subject: [PATCH] tools/toolbox: Document new sysext tooling Add a small section to outline how to combine `meson-build.sh --sysext` and `toolbox-sysext-install.sh` to install a system extension from our toolboxes. Part-of: --- tools/toolbox/README.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/tools/toolbox/README.md b/tools/toolbox/README.md index 3b695db2d..e4bbb816e 100644 --- a/tools/toolbox/README.md +++ b/tools/toolbox/README.md @@ -57,9 +57,39 @@ simulating multiple monitors or a greeter session. Run the script with `--help` to see all available options. +## toolbox-sysext-install.sh + +Extract a prepared system extension directory from the toolbox and +install it as [systemd-sysext] extension on the host. + +The `meson-build.sh` script has a `--sysext` option to easily add +projects to the extension directory in the toolbox: + +```sh + $ cd path/to/mutter; meson-build.sh --sysext + $ cd path/to/gnome-shell; meson-build.sh --sysext + $ toolbox-sysext-install.sh +``` + +System extensions require that the host operating system matches +the extension. For toolboxes created with the `create-toolbox.sh` +script this means the most recent Fedora release. + +### Important note + +gnome-shell is tightly coupled with mutter, so an extension that +only contains gnome-shell is very likely to fail. The `update-mutter` +command inside the toolbox already takes care of this, but when +building mutter manually, it is the responsibility of the caller +to ensure that the system extension contains a recent-enough +mutter build. + +Run the script with `--help` to see available options. + [toolbox]: https://containertoolbx.org/ [mutter]: https://gitlab.gnome.org/GNOME/mutter [builder]: https://apps.gnome.org/Builder/ [meson]: https://mesonbuild.com [handbook]: https://handbook.gnome.org/ [troubleshooting]: https://handbook.gnome.org/development/toolbx.html#when-things-go-wrong +[systemd-sysext]: https://www.freedesktop.org/software/systemd/man/latest/systemd-sysext.html -- 2.39.5